home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
TeX 1995 July
/
TeX CD-ROM July 1995 (Disc 1)(Walnut Creek)(1995).ISO
/
systems
/
atari
/
birkhahn-metafont-packed-disks
/
mf27-2_2e-disk2.zoo
/
inputs
/
dff.lzs
/
DFF.MF
Wrap
Text File
|
1991-07-28
|
5KB
|
153 lines
%
% Hier die Definition des Logos der DFF-L"anderkette.
% Version vom 27.7.'91 -- default h=2cm.
%
% (C) 1991 .muftix.
% All rights reserved.
%
% Motivation
% TeX ohne Metafont ist wie ein Auto ohne Ersatzreifen.
% Nat"urlich ist es nett, kleine Graphiken "uber TeX-Makros
% zu erzeugen, und mancheiner findet Spa"s daran, sich und sein TeX
% mit Bindfadenmethodik zu qu"alen.
% Hin und wieder ist es aber einfacher, nicht jede T"ure mit
% dem Brecheisen aufzumachen und TeX + Metafont so zu verwenden,
% wie beide vom Sch"opfer gedacht sind.
%
% Diese Datei
% Was in der Regel ben"otigt wird ist nicht der neue, ultimative
% Zeichensatz, sondern ein Piktogramm, ein Firmensymbol oder eine
% Graphikskizze.
% Die vorliegenden Symbole wurden nicht erzeugt, weil ich sie
% dringend gebraucht h"atte, sondern als Beispiel, weil sie besonders
% einfach sind und damit genau richtig, um zu zeigen, wie so etwas mit
% relativ einfachen Mitteln angegangen werden kann ist.
%
% WICHTIG:
% Diese Datei darf nur unver"andert weitergegeben werden.
% Sie kann aber von privat jederzeit zur eigenen Nutzung umbenannt und
% unter Vermerk auf die Quelle angepasst werden.
% Gewerbliche Nutzung und Weitergabe ist ausdr"ucklich untersagt,
% sofern keine Zusage des Verfassers vorliegt.
%
% Fehlermeldungen und Anfragen an
%
% muftix@asbach.nbg.sub.org oder
%
% J"urgen~Ernst~G"unther\\Flurstr.~37\\W--8507~Oberasbach\\Germany
%
%
%%% Teil 1: INITIALISIERUNG, DEFINITIONEN UND PARAMETER %%%%%%%%%%%%%%%
% Zun"achst mu"s Metafont initialisiert und auf die aktuelle
% Druckeraufl"osung eingestellt werden:
mode_setup;
% Da diese Datei sowohl als `standalone' als auch von einer
% Parameterdatei aufgerufen werden soll, bekommen alle
% Parameter Voreinstellungen
def default(suffix v)(text q) = if unknown v: v:=q fi enddef;
% 1) Als `Slant' wird dies Symbol eher nicht ben"otigt,
% aber man wei"s ja nie!
default( slant, 0 else:
currenttransform:=identity slanted slant transformed currenttransform);
default(ht#, 2cm#); % 2) Die H"ohe (hier auch Breite) des Zeichens
default(s#, 0cm#); % 3) Sperrung f"ur seitlichen Abstand
default(px#, 1pt#); % 4) Stiftbreite (f"ur `draw')
default(py#, .9px#); % 5) Stifth"ohe (aus optischen Gr"unden sollte
% der Stift leicht abgeflacht sein)
% Alle bei der Definition evtl. ben"otigten Werte "uber den Rahmen
% hinaus m"ussen an die absolute Aufl"osung (bei Zeichenstiften auch
% die Schw"arzung des `Zeichenstiftes').
% Hier sind das nur die Werte des Zeichenstiftes
define_blacker_pixels(px,py);
% Zeichenstift(e) zurechtlegen
pickup pencircle xscaled px yscaled py;
DFF_pen=savepen;
%%% Teil 2: ERZEUGUNG DER ZEICHEN %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
"DFF Laenderkette..."; % Alleinstehende Zeichenketten
% werden im proof-mode ausgegeben.
beginchar("A", ht#+s#, ht#, 0); % Zeichen an die Stelle "A" (oder 65)
% Breite ht#+s#, H"ohe ht#,
% Unterl"ange 0
save Durchmesser;
numeric Durchmesser[]; % Deklaration zus"atzlicher Variablen
x1 = good.x .5w; % Erster Punkt z1 in die Mitte
y1 = good.y .5h;
Durchmesser1 = min(w,h); % Der Kreis soll die Grenzen des
% umgebenden Rechtecks nicht verlassen
Durchmesser2 = .9Durchmesser1; % Hilfskreis f"urs Innendreieck
% Gef"ullter Kreis mit Mittelpunkt z1:
fill fullcircle scaled Durchmesser1 shifted z1;
% Was wissen wir "uber das innenliegende Dreieck?
x1 = x2 = x3; x4 = x1 + .5Durchmesser2;
y1 = y4; y2-y1 = y1-y3 = .5Durchmesser2;
% Dreieck `ausstanzen'
unfill z2--z3--z4--cycle;
endchar; % fertig!
% jetzt die zweite Form `invers' ohne l"astiges dazwischenkommentieren:
"DFF Laenderkette... invers";
beginchar("B", ht#+s#, ht#, 0);
save Durchmesser; numeric Durchmesser[];
x1 = good.x .5w;
y1 = good.y .5h;
Durchmesser1 = min(w,h);
Durchmesser2 = .9Durchmesser1;
pickup DFF_pen;
draw fullcircle scaled Durchmesser1 shifted z1;
x1 = x2 = x3; x4 = x1 + .5Durchmesser2;
y1 = y4; y2-y1 = y1-y3 = .5Durchmesser2;
fill z2--z3--z4--cycle;
endchar;
% Als n"achstes steht einem eingehenden Studium von logo.mf
% nichts mehr im Wege..
end.